/**
 * xlp.cz Edit Dashboard - Stylesheet
 * 
 * Bento / Grid styling tailored for ProcessWire AdminThemeUikit.
 * Fully responsive, accessible, with light & dark theme compatibility.
 */

:root {
  --xed-card-bg: #ffffff;
  --xed-card-border: rgba(0, 0, 0, 0.08);
  --xed-card-hover-border: #1e87f0;
  --xed-card-hover-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.08), 0 8px 10px -6px rgba(0, 0, 0, 0.04);
  --xed-card-title: #1e293b;
  --xed-card-desc: #64748b;
  --xed-card-icon-bg: #f0f7ff;
  --xed-card-icon-color: #1e87f0;
  --xed-badge-bg: #e0effe;
  --xed-badge-color: #0369a1;
  --xed-support-bg: #ffffff;
  --xed-support-color: #1e293b;
  --xed-btn-primary-bg: #334155;
  --xed-btn-primary-hover: #1e293b;
  --xed-btn-primary-text: #ffffff;
  --xed-btn-default-bg: #ffffff;
  --xed-btn-default-hover: #f8fafc;
  --xed-btn-default-border: #cbd5e1;
  --xed-btn-default-text: #334155;
}

/* ProcessWire Dark Theme Support */
.pw-theme-dark,
[data-theme="dark"],
.uk-theme-dark,
@media (prefers-color-scheme: dark) {
  :root {
    --xed-card-bg: #1f232b;
    --xed-card-border: rgba(255, 255, 255, 0.1);
    --xed-card-hover-border: #3297fd;
    --xed-card-hover-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.5);
    --xed-card-title: #f1f5f9;
    --xed-card-desc: #94a3b8;
    --xed-card-icon-bg: rgba(30, 135, 240, 0.18);
    --xed-card-icon-color: #60a5fa;
    --xed-badge-bg: rgba(59, 130, 246, 0.25);
    --xed-badge-color: #93c5fd;
    --xed-support-bg: #1f232b;
    --xed-support-color: #f1f5f9;
    --xed-btn-primary-bg: #475569;
    --xed-btn-primary-hover: #334155;
    --xed-btn-default-bg: #282f3a;
    --xed-btn-default-border: rgba(255, 255, 255, 0.15);
    --xed-btn-default-text: #f1f5f9;
  }
}

/* Main Dashboard Container */
.xed-dashboard {
  padding-top: 10px;
  padding-bottom: 50px;
  max-width: 1400px;
  width: 100%;
  box-sizing: border-box;
}

/* Global Link Reset & Typography: No Underlines Anywhere */
.xed-dashboard a,
.xed-dashboard a:link,
.xed-dashboard a:visited,
.xed-dashboard a:hover,
.xed-dashboard a:active,
.xed-dashboard a:focus,
.xed-edit-nav-bar a,
.xed-card,
.xed-support-btn,
.xed-btn-viewsite,
.xed-btn-manage,
.uk-link-heading,
.uk-table a {
  text-decoration: none !important;
}

/* Airy & Modern Buttons - Strictly for Dashboard and XED Module Elements */
.xed-dashboard .uk-button,
.xed-edit-nav-bar .uk-button,
#ProcessPageEdit button[name="xed_save_and_return"],
#ProcessPageEdit input[name="xed_save_and_return"] {
  padding: 8px 20px !important;
  font-size: 0.88rem !important;
  line-height: 1.4 !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer;
  text-decoration: none !important;
}

.xed-dashboard .uk-button-small,
.xed-edit-nav-bar .uk-button-small {
  padding: 7px 16px !important;
  font-size: 0.84rem !important;
  min-height: 34px !important;
}

/* Primary Anthracite/Slate Button (Module buttons) */
.xed-dashboard .uk-button-primary,
.xed-edit-nav-bar .uk-button-primary,
#ProcessPageEdit button[name="xed_save_and_return"],
#ProcessPageEdit input[name="xed_save_and_return"] {
  background-color: var(--xed-btn-primary-bg) !important;
  color: #ffffff !important;
  border: 1px solid transparent !important;
}

.xed-dashboard .uk-button-primary:hover,
.xed-edit-nav-bar .uk-button-primary:hover,
#ProcessPageEdit button[name="xed_save_and_return"]:hover,
#ProcessPageEdit input[name="xed_save_and_return"]:hover {
  background-color: var(--xed-btn-primary-hover) !important;
  color: #ffffff !important;
  box-shadow: 0 4px 12px rgba(51, 65, 85, 0.25) !important;
  transform: translateY(-2px);
}

/* Default / Secondary Button (Module buttons) */
.xed-dashboard .uk-button-default,
.xed-edit-nav-bar .uk-button-default {
  background-color: var(--xed-btn-default-bg) !important;
  color: var(--xed-btn-default-text) !important;
  border: 1px solid var(--xed-btn-default-border) !important;
}

.xed-dashboard .uk-button-default:hover,
.xed-edit-nav-bar .uk-button-default:hover {
  background-color: var(--xed-btn-default-hover) !important;
  color: #1e87f0 !important;
  border-color: #1e87f0 !important;
  box-shadow: 0 4px 12px rgba(30, 135, 240, 0.12) !important;
  transform: translateY(-2px);
}

/* Page Edit Navigation Bar */
.xed-edit-nav-bar {
  background-color: var(--xed-card-bg) !important;
  border: 1px solid var(--xed-card-border) !important;
  border-radius: 10px !important;
  padding: 12px 18px !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.03) !important;
}

/* Header Section */
.xed-header {
  padding-bottom: 16px;
  margin-bottom: 24px;
  border-bottom: 1px solid var(--xed-card-border);
}

.xed-header-welcome p {
  font-size: 1.05rem;
  color: var(--xed-card-desc);
}

.xed-header-welcome p strong {
  color: var(--xed-card-title);
}

/* Bento Grid */
.xed-grid {
  margin-top: 0 !important;
}

/* Card Component */
.xed-card {
  display: flex !important;
  flex-direction: column;
  height: 100%;
  padding: 24px 24px 20px 24px !important;
  background-color: var(--xed-card-bg) !important;
  border: 1px solid var(--xed-card-border) !important;
  border-radius: 12px !important;
  color: inherit !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.03) !important;
  transition: transform 0.22s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.22s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.22s ease !important;
  position: relative;
  overflow: hidden;
  box-sizing: border-box !important;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
  will-change: transform, box-shadow, border-color;
}

/* Focus and Hover states */
.xed-card:hover {
  border-color: var(--xed-card-hover-border) !important;
  box-shadow: var(--xed-card-hover-shadow) !important;
  transform: translateY(-4px) translateZ(0);
}

.xed-card:focus {
  outline: none;
}

.xed-card:focus-visible {
  outline: 2px solid var(--xed-card-hover-border) !important;
  outline-offset: 3px;
  border-color: var(--xed-card-hover-border) !important;
}

/* Card Header (Icon + Badge) */
.xed-card-header {
  width: 100%;
}

.xed-card-icon {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  background-color: var(--xed-card-icon-bg);
  color: var(--xed-card-icon-color);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.xed-card:hover .xed-card-icon {
  transform: scale(1.08);
  background-color: #e0effe;
}

.xed-card-badge {
  background-color: var(--xed-badge-bg) !important;
  color: var(--xed-badge-color) !important;
  font-size: 0.75rem;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 20px;
  text-transform: none;
  letter-spacing: 0.02em;
  transition: all 0.2s ease;
}

.xed-card:hover .xed-card-badge {
  background-color: #d0e7fc !important;
}

/* Card Content (Title + Description) */
.xed-card-content {
  flex: 1 0 auto;
}

.xed-card-title {
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  color: var(--xed-card-title) !important;
  line-height: 1.35 !important;
  letter-spacing: -0.01em;
  transition: color 0.2s ease;
}

.xed-card:hover .xed-card-title {
  color: var(--xed-card-hover-border) !important;
}

.xed-card-desc {
  font-size: 0.92rem;
  line-height: 1.5;
  color: var(--xed-card-desc) !important;
  margin-top: 8px !important;
}

/* Card Footer (Meta + Arrow Action) */
.xed-card-footer {
  margin-top: auto;
  padding-top: 16px;
  border-top: 1px solid var(--xed-card-border);
}

.xed-card-meta {
  font-size: 0.82rem;
  color: var(--xed-card-desc);
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: color 0.2s ease;
}

.xed-card:hover .xed-card-meta {
  color: var(--xed-card-title);
}

.xed-card-action {
  color: var(--xed-card-desc);
  opacity: 0.6;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.xed-card:hover .xed-card-action {
  opacity: 1;
  color: var(--xed-card-hover-border);
  transform: translateX(4px);
}

/* Empty State */
.xed-empty-state {
  border: 1px dashed var(--xed-card-border) !important;
  border-radius: 12px !important;
  background-color: var(--xed-card-bg) !important;
  padding: 40px 20px !important;
}

/* Support Panel */
.xed-support-panel {
  background: var(--xed-support-bg) !important;
  color: var(--xed-support-color) !important;
  border-radius: 12px !important;
  border: 1px solid var(--xed-card-border) !important;
  padding: 24px 28px !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.03) !important;
  transition: box-shadow 0.22s ease, border-color 0.22s ease !important;
  box-sizing: border-box !important;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}

.xed-support-panel:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04) !important;
}

.xed-support-panel .uk-card-title {
  color: var(--xed-support-color) !important;
  font-weight: 700;
  font-size: 1.15rem;
}

.xed-support-panel .uk-text-muted {
  color: var(--xed-card-desc) !important;
}

.xed-support-btn {
  background: var(--xed-btn-default-bg) !important;
  color: var(--xed-support-color) !important;
  border: 1px solid var(--xed-btn-default-border) !important;
  border-radius: 8px;
  font-weight: 600;
  padding: 7px 18px !important;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  display: inline-flex;
  align-items: center;
}

.xed-support-btn:hover {
  background: #ffffff !important;
  color: #1e87f0 !important;
  border-color: #1e87f0 !important;
  box-shadow: 0 4px 10px rgba(30, 135, 240, 0.15);
  transform: translateY(-2px);
}

/* Subpage List View (___executeList) */
.xed-table-card {
  width: 100% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  background-color: var(--xed-card-bg) !important;
  border: 1px solid var(--xed-card-border) !important;
  border-radius: 12px !important;
}

.xed-table {
  width: 100% !important;
  margin: 0 !important;
  border-collapse: collapse !important;
}

.xed-table th {
  background-color: #f8fafc !important;
  color: #64748b !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  padding: 16px 20px !important;
  border-bottom: 1px solid var(--xed-card-border) !important;
}

.xed-table td {
  padding: 16px 20px !important;
  vertical-align: middle !important;
  border-bottom: 1px solid var(--xed-card-border) !important;
}

/* Explicit equal left and right outer table paddings */
.xed-table th:first-child,
.xed-table td:first-child {
  padding-left: 28px !important;
}

.xed-table th:last-child,
.xed-table td:last-child {
  padding-right: 28px !important;
}

.xed-btn-icon {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 8px !important;
  box-sizing: border-box !important;
  line-height: 1 !important;
}

.xed-btn-icon [uk-icon],
.xed-btn-icon svg,
.xed-btn-icon .uk-icon {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  display: inline-block !important;
  vertical-align: middle !important;
}

.xed-table a.uk-link-heading {
  color: var(--xed-card-title);
  font-size: 0.95rem;
  transition: color 0.2s ease;
}

.xed-table tr:hover a.uk-link-heading {
  color: #1e87f0;
}

.xed-table tr {
  transition: background-color 0.15s ease;
}

.xed-table tr:hover {
  background-color: #f8fafc !important;
}

/* Status Badges in Table */
.xed-badge-status {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 6px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.xed-badge-published {
  background-color: #dcfce7;
  color: #166534;
}

.xed-badge-draft {
  background-color: #fee2e2;
  color: #991b1b;
}

.xed-badge-hidden {
  background-color: #fef3c7;
  color: #92400e;
}

/* HTML Code Editor View (___executeHtml) */
.xed-history-card {
  border: 1px solid var(--xed-card-border) !important;
  border-radius: 10px !important;
  background-color: var(--xed-card-bg) !important;
}

#xed-ace-editor {
  font-family: 'JetBrains Mono', 'Fira Code', Consolas, Monaco, monospace !important;
  line-height: 1.55 !important;
  border: none !important;
}

#xed-html-textarea {
  box-sizing: border-box;
  resize: vertical;
}

/* =========================================================================
   DEDICATED DASHBOARD PAGE EDITOR (.xed-edit-card)
   Transforms ProcessWire form into a clean, modern custom dashboard editor
   ========================================================================= */

.xed-edit-card {
  padding: 32px !important;
  background-color: var(--xed-card-bg, #ffffff) !important;
  border: 1px solid var(--xed-card-border, #e2e8f0) !important;
  border-radius: 12px !important;
  box-shadow: var(--xed-card-shadow) !important;
  --pw-button-radius: 8px !important;
  --pw-button-background: #334155 !important;
  --pw-button-color: #ffffff !important;
  --pw-button-hover-background: #1e293b !important;
}

/* Hide distracting ProcessWire system tabs bar for clients (Settings/Delete/Children) */
.xed-edit-card .WireTabs,
.xed-edit-card ul.uk-tab,
.xed-edit-card .uk-tab-left,
.xed-edit-card .uk-tab-right {
  display: none !important;
}

/* Modern Field Headers & Clean Labels */
.xed-edit-card .Inputfield,
.xed-edit-card .InputfieldWrapper,
.xed-edit-card .Inputfields,
.xed-edit-card .Inputfield_title,
.xed-edit-card .InputfieldText,
.xed-edit-card .InputfieldTextarea,
.xed-edit-card .InputfieldPage,
.xed-edit-card .InputfieldFile,
.xed-edit-card .InputfieldImage,
.xed-edit-card .InputfieldCKEditor,
.xed-edit-card .InputfieldTinyMCE {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
  padding: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 24px !important;
}

.xed-edit-card .InputfieldHeader {
  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  padding: 0 0 8px 0 !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  color: var(--xed-card-title, #0f172a) !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
  cursor: default !important;
}

.xed-edit-card .InputfieldHeader .toggle-icon,
.xed-edit-card .InputfieldHeader [uk-icon="chevron-up"],
.xed-edit-card .InputfieldHeader [uk-icon="chevron-down"],
.xed-edit-card .InputfieldHeader .pw-icon,
.xed-edit-card .InputfieldHeader .InputfieldStateToggle {
  display: none !important;
}

.xed-edit-card .InputfieldContent {
  padding: 0 !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

.xed-edit-card .description,
.xed-edit-card .notes {
  font-size: 0.84rem !important;
  color: var(--xed-card-desc, #64748b) !important;
  margin-top: 6px !important;
  line-height: 1.45 !important;
}

/* Modern Rounded Form Inputs */
.xed-edit-card input[type="text"],
.xed-edit-card input[type="number"],
.xed-edit-card input[type="email"],
.xed-edit-card input[type="url"],
.xed-edit-card input[type="date"],
.xed-edit-card input[type="datetime-local"],
.xed-edit-card textarea,
.xed-edit-card select,
.xed-edit-card .uk-input,
.xed-edit-card .uk-textarea,
.xed-edit-card .uk-select {
  border: 1px solid #cbd5e1 !important;
  border-radius: 8px !important;
  padding: 9px 14px !important;
  font-size: 0.92rem !important;
  background-color: #ffffff !important;
  color: var(--xed-card-title, #0f172a) !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) !important;
  transition: all 0.15s ease !important;
  box-sizing: border-box !important;
}

.xed-edit-card input:focus,
.xed-edit-card textarea:focus,
.xed-edit-card select:focus,
.xed-edit-card .uk-input:focus,
.xed-edit-card .uk-textarea:focus,
.xed-edit-card .uk-select:focus {
  border-color: #1e87f0 !important;
  box-shadow: 0 0 0 3px rgba(30, 135, 240, 0.15) !important;
  outline: none !important;
}

/* WYSIWYG Editor (TinyMCE / CKEditor) Container */
.xed-edit-card .tox-tinymce,
.xed-edit-card .cke {
  border: 1px solid #cbd5e1 !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) !important;
}

/* Image & File Upload Fields */
.xed-edit-card .InputfieldImage .gridImages,
.xed-edit-card .InputfieldFile .gridImages {
  gap: 12px !important;
  display: flex !important;
  flex-wrap: wrap !important;
}

.xed-edit-card .gridImage {
  border-radius: 8px !important;
  overflow: hidden !important;
  border: 1px solid #e2e8f0 !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05) !important;
  transition: transform 0.15s ease !important;
}

.xed-edit-card .gridImage:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08) !important;
}

.xed-edit-card .InputfieldImage .InputfieldFileUpload,
.xed-edit-card .InputfieldFile .InputfieldFileUpload,
.xed-edit-card .InputfieldFileUpload,
.xed-edit-card .InputfieldImageUpload {
  background: #f8fafc !important;
  border: 2px dashed #cbd5e1 !important;
  border-radius: 10px !important;
  padding: 16px 20px !important;
  margin-top: 12px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

/* Choose File Button (.InputMask & labels) */
.xed-edit-card .InputMask,
.xed-edit-card .InputMask.ui-button,
.xed-edit-card .InputMask.ui-state-default,
.xed-edit-card .InputfieldFileUpload .InputMask,
.xed-edit-card .InputfieldImageUpload .InputMask,
.xed-edit-card .InputfieldHasFileList .InputMask,
.xed-edit-card .InputfieldFileUpload .InputMask.ui-button,
.xed-edit-card .InputfieldImageUpload .InputMask.ui-button,
.xed-edit-card .InputfieldHasFileList .InputMask.ui-button,
.xed-edit-card .InputfieldImage .InputfieldFileUpload label,
.xed-edit-card .InputfieldFile .InputfieldFileUpload label,
.xed-edit-card .InputfieldFileUpload label.ui-button,
.xed-edit-card .InputfieldFileUpload span.ui-button,
.xed-edit-card .InputfieldFileUpload .uk-button,
.xed-edit-card input.FieldtypeImage + label,
.xed-edit-card input[type="file"] + label,
.xed-edit-card label.InputfieldFileUpload {
  background-color: var(--xed-btn-primary-bg, #334155) !important;
  background-image: none !important;
  color: #ffffff !important;
  border-radius: 8px !important;
  border: 1px solid transparent !important;
  padding: 0 20px !important;
  height: 38px !important;
  min-height: 38px !important;
  line-height: 38px !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06) !important;
  transition: all 0.2s ease !important;
  box-sizing: border-box !important;
  cursor: pointer !important;
}

.xed-edit-card .InputMask:hover,
.xed-edit-card .InputMask.ui-button:hover,
.xed-edit-card .InputMask.ui-state-hover,
.xed-edit-card .InputfieldFileUpload .InputMask:hover,
.xed-edit-card .InputfieldImageUpload .InputMask:hover,
.xed-edit-card .InputfieldHasFileList .InputMask:hover,
.xed-edit-card .InputfieldImage .InputfieldFileUpload label:hover,
.xed-edit-card .InputfieldFile .InputfieldFileUpload label:hover,
.xed-edit-card .InputfieldFileUpload label.ui-button:hover,
.xed-edit-card input.FieldtypeImage + label:hover {
  background-color: var(--xed-btn-primary-hover, #1e293b) !important;
  background-image: none !important;
  color: #ffffff !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(51, 65, 85, 0.25) !important;
}

.xed-edit-card .InputMask span,
.xed-edit-card .InputMask i,
.xed-edit-card .InputMask svg,
.xed-edit-card .InputMask .ui-button-text {
  color: #ffffff !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}

/* Hide native ProcessWire floating header buttons in Dashboard view */
.ProcessXlpEditDashboard #pw-content-head-buttons,
.ProcessXlpEditDashboard span.pw-button-dropdown-wrap,
#pw-mastheads span.pw-button-dropdown-wrap.uk-float-right,
span.pw-button-dropdown-wrap.uk-float-right,
#pw-masthead-actions {
  display: none !important;
}

/* Hide redundant inside-card submit buttons in Dashboard Editor */
.xed-edit-card .InputfieldSubmit,
.xed-edit-card #ProcessPageEdit .InputfieldSubmit,
.xed-edit-card #submit_save,
.xed-edit-card #submit_save_copy,
.xed-edit-card button#pw-dropdown-toggle-submit_save,
.xed-edit-card button#pw-dropdown-toggle-submit_save_copy,
.xed-edit-card button[name="xed_save_and_return"],
.xed-edit-card input[name="xed_save_and_return"] {
  display: none !important;
}

/* Dedicated Footer Action Bar outside the white card */
.xed-edit-footer {
  border-top: 1px solid var(--xed-card-border, #e2e8f0) !important;
  padding-top: 20px !important;
  margin-top: 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

/* Secondary Button (Save - jen obrys / outline) */
.xed-edit-footer #xed-footer-btn-save {
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 20px !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
  border: 1px solid #cbd5e1 !important;
  background-color: #ffffff !important;
  color: var(--xed-card-title, #334155) !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;
  transition: all 0.2s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  margin: 0 !important;
}

.xed-edit-footer #xed-footer-btn-save:hover {
  background-color: #f8fafc !important;
  border-color: #94a3b8 !important;
  color: #0f172a !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.06) !important;
}

/* Primary Button (Uložit a vrátit se - plné tlačítko) */
.xed-edit-footer #xed-footer-btn-save-return {
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 20px !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
  border: 1px solid transparent !important;
  background-color: var(--xed-btn-primary-bg, #334155) !important;
  color: #ffffff !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06) !important;
  transition: all 0.2s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  margin: 0 !important;
}

.xed-edit-footer #xed-footer-btn-save-return:hover {
  background-color: var(--xed-btn-primary-hover, #1e293b) !important;
  color: #ffffff !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(51, 65, 85, 0.25) !important;
}

/* =========================================================================
   BENTO GRID CARD COLOR THEMES & ACCENTS
   ========================================================================= */

/* 🟢 Emerald / Green Theme (E-shop, Objednávky) */
.xed-card.xed-card-color-green {
  background-color: #f0fdf4 !important;
  border-color: #bbf7d0 !important;
}
.xed-card.xed-card-color-green:hover {
  border-color: #16a34a !important;
  box-shadow: 0 10px 25px -5px rgba(22, 163, 74, 0.12), 0 8px 10px -6px rgba(22, 163, 74, 0.06) !important;
}
.xed-card.xed-card-color-green .xed-card-icon {
  background-color: #dcfce7 !important;
  color: #16a34a !important;
}
.xed-card.xed-card-color-green:hover .xed-card-title {
  color: #15803d !important;
}
.xed-card.xed-card-color-green:hover .xed-card-action {
  color: #16a34a !important;
}

/* 🔵 Sky / Blue Theme (Produkty, Služby, Články) */
.xed-card.xed-card-color-blue {
  background-color: #f0f9ff !important;
  border-color: #bae6fd !important;
}
.xed-card.xed-card-color-blue:hover {
  border-color: #0284c7 !important;
  box-shadow: 0 10px 25px -5px rgba(2, 132, 199, 0.12), 0 8px 10px -6px rgba(2, 132, 199, 0.06) !important;
}
.xed-card.xed-card-color-blue .xed-card-icon {
  background-color: #e0f2fe !important;
  color: #0284c7 !important;
}
.xed-card.xed-card-color-blue:hover .xed-card-title {
  color: #0369a1 !important;
}
.xed-card.xed-card-color-blue:hover .xed-card-action {
  color: #0284c7 !important;
}

/* 🟡 Amber / Gold Theme (Akce, Slevy, Upozornění) */
.xed-card.xed-card-color-amber {
  background-color: #fffbeb !important;
  border-color: #fde68a !important;
}
.xed-card.xed-card-color-amber:hover {
  border-color: #d97706 !important;
  box-shadow: 0 10px 25px -5px rgba(217, 119, 6, 0.12), 0 8px 10px -6px rgba(217, 119, 6, 0.06) !important;
}
.xed-card.xed-card-color-amber .xed-card-icon {
  background-color: #fef3c7 !important;
  color: #d97706 !important;
}
.xed-card.xed-card-color-amber:hover .xed-card-title {
  color: #b45309 !important;
}
.xed-card.xed-card-color-amber:hover .xed-card-action {
  color: #d97706 !important;
}

/* 🟣 Purple / Violet Theme (Portfolio, Reference) */
.xed-card.xed-card-color-purple {
  background-color: #faf5ff !important;
  border-color: #e9d5ff !important;
}
.xed-card.xed-card-color-purple:hover {
  border-color: #9333ea !important;
  box-shadow: 0 10px 25px -5px rgba(147, 51, 234, 0.12), 0 8px 10px -6px rgba(147, 51, 234, 0.06) !important;
}
.xed-card.xed-card-color-purple .xed-card-icon {
  background-color: #f3e8ff !important;
  color: #9333ea !important;
}
.xed-card.xed-card-color-purple:hover .xed-card-title {
  color: #7e22ce !important;
}
.xed-card.xed-card-color-purple:hover .xed-card-action {
  color: #9333ea !important;
}

/* ⚫ Slate / Dark Theme (Kontrastní antracitový styl) */
.xed-card.xed-card-color-dark {
  background-color: #1e293b !important;
  border-color: #334155 !important;
}
.xed-card.xed-card-color-dark:hover {
  border-color: #60a5fa !important;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.35) !important;
}
.xed-card.xed-card-color-dark .xed-card-title {
  color: #ffffff !important;
}
.xed-card.xed-card-color-dark .xed-card-desc {
  color: #94a3b8 !important;
}
.xed-card.xed-card-color-dark .xed-card-meta {
  color: #94a3b8 !important;
}
.xed-card.xed-card-color-dark .xed-card-icon {
  background-color: #334155 !important;
  color: #60a5fa !important;
}
.xed-card.xed-card-color-dark:hover .xed-card-icon {
  background-color: #475569 !important;
}
.xed-card.xed-card-color-dark .xed-card-action {
  color: #94a3b8 !important;
}
.xed-card.xed-card-color-dark:hover .xed-card-action {
  color: #60a5fa !important;
}

/* Responsive adjustments */
@media (max-width: 640px) {
  .xed-dashboard {
    padding-top: 10px;
  }
  .xed-card {
    padding: 18px 18px 16px 18px !important;
  }
  .xed-edit-card {
    padding: 20px !important;
  }
  .xed-support-panel {
    padding: 20px !important;
  }
  .xed-table th, .xed-table td {
    padding: 10px 12px !important;
  }
  #xed-ace-editor {
    height: 420px !important;
  }
}
